#define _CRT_SECURE_NO_WARNINGS 1
#include <stdio.h>
#include <string.h>
#include <stdlib.h>

//int main()
//{
//	int str1[] = { 1,2,3,4,5,1,2,3,4,6 };
//	int ret = 0;
//	int num = sizeof(str1) / sizeof(str1[0]);
//	for (int i = 0; i < num; i++)
//	{
//		ret ^= str1[i];
//	}
//	int n = 0;
//	while (n < 32)
//	{
//		if (ret & (1 << n))
//		{
//			break;
//		}
//		n++;
//	}
//	int a = 0, b = 0;
//	for (int i = 0; i < num; i++)
//	{
//		if (str1[i] & (1 << n))
//		{
//			a ^= str1[i];
//		}
//		else
//		{
//			b ^= str1[i];
//		}
//	}
//	printf("%d %d", a, b);
//	return 0;
//}


//char* my_strncpy(char* dest, char* src, size_t num)
//{
//	char* ret = dest;
//	while (num--)
//	{
//		*dest = *src;
//		dest++;
//		src++;
//	}
//	return ret;
//}
//
//int main()
//{
//	char arr1[20] = { 0 };
//	char arr2[] = "abcdefg";
//	my_strncpy(arr1, arr2, 5);
//	printf("%s\n", arr1);
//	return 0;
//}

//char* my_strncat(char* dest, char* src, size_t num)
//{
//	char* ret = dest;
//	while (*dest)
//	{
//		dest++;
//	}
//	while (num--)
//	{
//		*dest = *src;
//		dest++;
//		src++;
//	}
//	return ret;
//}
//
//int main()
//{
//	char arr1[20] = "abc";
//	char arr2[] = "defg";
//	my_strncat(arr1, arr2, 3);
//	printf("%s\n", arr1);
//	return 0;
//}


//#include <math.h>
//int my_atoi(const char* str)
//{
//	int i = 0;
//	int num = 0;
//	while (*str == ' ')
//	{
//		str++;
//	}
//	if (*str == '+' || *str == '-' || *str == '0' || (*str > '0' && *str <= '9'))
//	{
//		char k = 0;
//		if (*str == '-' || *str == '+')
//		{
//			k = *str++;
//		}
//		if (*str == '0')
//		{
//			while (*str == '0')
//			{
//				*str++;
//			}
//		}
//		while (*str >= '0' && *str <= '9')
//		{
//			num += pow(10, i) * (*str - '0');
//			i++;
//			*str++;
//		}
//		if (k == '-')
//		{
//			num *= -1;
//		}
//		return num;
//	}
//	return 0;
//}
//
//int main()
//{
//	char arr1[] = "   -0011";
//	int num1 = my_atoi(arr1);
//	char arr2[] = "   -001a1";
//	int num2 = my_atoi(arr2);
//	char arr3[] = "   -a0011";
//	int num3 = my_atoi(arr3);
//	printf("%d %d %d\n", num1, num2,num3);
//	return 0;
//}